#include "tjc_hmi.h"
#include "stdio.h"
#include "ti/devices/msp/m0p/mspm0g350x.h"

void uart_send_char(UART_Regs *uart, uint8_t ch)
{
    //当串口0忙的时候等待，不忙的时候再发送传进来的字符
    while(DL_UART_isBusy(uart) == true );
    //发送单个字符
    DL_UART_Main_transmitData(uart, ch);
}

void uart_send_string(UART_Regs *uart, char* str)
{
	uint8_t k=0;
    do {
		uart_send_char(uart, *(str + k));
        k++;
    } while (*(str + k)!='\0');
}


void Tjc_Printf(const char *str, ...)
{ 
	char buffer[256];  // 数据长度
	uint8_t i;
	va_list arg_ptr;   // 构建参数列表
	va_start(arg_ptr, str);  // 获取参数 
	vsprintf(buffer, str, arg_ptr); // 格式化参数列表到字符串
//	// 发送控制指令到串口屏
	uart_send_string(UART1, buffer); 
	// 打印信息到调试串口
	uart_send_string(UART0, buffer);
	/***********结束帧************/
	uart_send_char(UART1, 0xff); 
	uart_send_char(UART1, 0xff); 
	uart_send_char(UART1, 0xff);
//	/***********结束帧************/
	va_end(arg_ptr); // 清理参数列表	
}
